package com.bocloud.service;

import com.bocloud.model.Pagination;
import com.bocloud.model.User;
import org.springframework.stereotype.Service;

import java.util.List;


/**
 * 用户表操作接口类
 */
@Service
public interface UserService {

    /**
     * 用途：查询用户表中的所有数据，并分页显示
     */
    public Pagination getAllUsers(Integer currPage, Integer Page_size);

    /**
     * 用途：根据用户名和密码进行模糊查询，并分页显示
     */
    public Pagination getBy(Integer currPage, Integer Page_size, User user);

    /**
     * 新增用户
     */
    public boolean addUser(User user);

    /**
     * 用途：根据用户工号查询
     */
    public User getById(User user);

    /**
     * 用途：获取所有的用户名和工号，做新增时直属上级的下拉框
     */
    public List<User> getAllSuperior();

    /**
     * 用途：获取所有的用户名和工号，做修改时直属上级的下拉框
     */
    public List<User> getSuperior(User user);

    /**
     * 用途：批量删除用户
     */
    public boolean delete(String jobNum);


    /**
     * 用途：修改用户信息
     */
    public boolean update(User user);

    /**
     * 用途：根据用户工号获取角色编号和角色名称
     */
    public User getRoleById(User user);

    /**
     * 用途：修改角色
     */
    public boolean updateRole(User user);

}
